The present invention relates to the digital color image processing arts. It finds particular application in conjunction with rendering of an image including use of a variable under-color correction system, and will be described with particular reference thereto. However, it is to be appreciated that the invention is applicable to other image rendering applications.
Color in printed digital images results from the combination of a limited set of colors over a small area in densities selected to integrate the desired color response. This is accomplished in many printing devices by reproducing so called xe2x80x9cseparationsxe2x80x9d of the image, where each separation provides varying gray values of a single primary color. When the separations are combined together, the result is a full color image.
The particular color of each separation depends on the xe2x80x9ccolor-spacexe2x80x9d being implemented. Examples of color space models include, RGB, CMY, CMYK, Lab, Yes, YIQ, HSV, HLS.
In practice, color images are commonly printed in a cyan-magenta-yellow-black (CMYK) color-space. This color-space is based upon the CMY color-space, but attempts to improve the quality of xe2x80x9cblackxe2x80x9d in the image and reduce use of color inks. In theory, images can be printed using the CMY color space, with a mixture of the three colors producing black. In practice, however, printing with only cyan, magenta, and yellow inks often does not produce the highest quality black, but instead results in a muddy brownish output due to impurities in the inks, the particular paper or other image recording media used, and the partial reflection of light instead of its complete absorption into the inks. Furthermore, select use of black ink in place of the primary colors reduces expense and minimizes the total amount of ink used which is often desirable in ink-jet and other printing applications where the ability of the recording substrate to absorb ink is limited.
Methods for converting to the CMYK color space include those referred to as xe2x80x9cunder-color removalxe2x80x9d (UCR) and xe2x80x9cgray-component replacementxe2x80x9d (GCR). UCR/GCR methods vary, but commonly involve examining the individual pixels of an image using the lowest or xe2x80x9cdarkestxe2x80x9d of the three cyan-magenta-yellow colors to determine an amount of black to be added (Under-color Removal). One or more of the CMY colors are then adjusted to account for the addition of black ink (Grey Component Replacement). For example, if a given pixel of an image is represented in the CMY color space by C=0.5, M=0.4, and Y=0.25, then the black or K value would be based upon the lowest or Y value. In a 50% under-color removal (UCR) method, K=50% of Y=0.125. In a typical gray component replacement (GCR) step, the remaining CMY values would then each be reduced by 0.125 so that the resulting UCR/GCR pixel is represented by C=0.375, M=0.275, Y=0.125, and K=0.125. Of course, other UCR/GCR methods are known, but each seeks to determine the level of black for a given pixel, and to thereafter adjust the other colors accordingly to account for the addition of black ink.
In the digital processing of color images, the individual color separations are conveniently represented as monochromatic bitmaps, which may be described as an electronic image with a plurality of discrete elements (i.e. xe2x80x9cpixelsxe2x80x9d) defined by position and gray value. In such a system, gray value is described as one level in a number of possible states or levels. When more than two different levels are used in the description of an image, the levels are termed xe2x80x9cgrayxe2x80x9d (without regard to the actual color) to indicate that the pixel value is between some maximum and minimum gray level. Most printing systems have the ability to reproduce an image with only a small number of gray values per pixel, most commonly two, although other numbers are possible. A printing system that is able to reproduce only two gray values for each pixel is said to produce binary output, i.e., the pixel is either xe2x80x9conxe2x80x9d or xe2x80x9coff.xe2x80x9d
On the other hand, image input devices, including digital cameras, scanners, and the like, are capable of describing each pixel of an image with many gray levels, for example 256 gray levels. Such input data is commonly called xe2x80x9ccontinuousxe2x80x9d or xe2x80x9ccontonexe2x80x9d data. Accordingly, it is necessary that the input contone image (with many xe2x80x9cgrayxe2x80x9d levels) be describable with the smaller set of gray levels reproducible by the output device in a manner that captures the intent of the user. In the digital reproduction of color images, this means that each of the color separations of the color-space must be reduced from the large number of continuous gray levels as input, to the smaller number of levels suitable for output. The multiple color separations are then combined together for printing to yield the final color print.
Given that common image output devices are xe2x80x9cbinaryxe2x80x9dxe2x80x94i.e., produce either xe2x80x9conxe2x80x9d or xe2x80x9coffxe2x80x9d pixels for each color separation, it is necessary to employ half-toning techniques for each color separation to achieve the desired color within each separation before the color separations are combined for printing. Through half-toning, gray value variation within a color separation is represented by controlling the number of pixels that are xe2x80x9conxe2x80x9d within a discrete area or cell of the separation. In such cases, the human eye and brain interpret the controlled number of xe2x80x9conxe2x80x9d pixels in a halftone cell as a xe2x80x9cgray level,xe2x80x9d with greater numbers of xe2x80x9conxe2x80x9d pixels in a given cell or area being interpreted as more color. In theory, a human observer does not see the individual xe2x80x9conxe2x80x9d and xe2x80x9coffxe2x80x9d pixels within a halftone cell, but instead sees an average amount of ink on paper. In practice, the effectiveness of half-toning methods varies.
Existing binary imaging systems do not allow for precise color classification and therefore a pixel will be either xe2x80x9ccolorxe2x80x9d or xe2x80x9cneutral.xe2x80x9d In turn, transition from xe2x80x9ccolorxe2x80x9d to xe2x80x9cneutralxe2x80x9d in rendering of an image results in an and/or switching environment.
The above concept is illustrated in FIG. 1 which is intended to represent a full color sweep strip 10 from a saturated color (e.g. a chromaticity of 1.0) to a full neutral (e.g. a chromaticity of 0.0). It is appreciated that no actual color sweep is shown in the figure. Rather, the values 1.0 to 0.0 represent the amount of saturation which would exist at a particular color, as a color transitions from full saturation to full neutral. When in a color area 12 (between values 1.0 to 0.5), the CMYK contributions determine the output and, when in a black area 14 (less than 0.5) the output is strictly K or black. The transition from CMYK contribution to strictly K occurs at a specific switch-point 16, which results in a dramatic transition from the use of a four color mixture to black toner only. This transition point can be seen by the human eye and therefore results in an undesirable discontinuity of the color sweep.
In image rendering systems, which provide for black replacement, as shown in FIG. 2, there are two paths for converting the input, such as Lab to CMYK. It is to be noted that while the present discussion will focus on Lab and CMYK, the concepts may be extended to other color space models.
System 18 uses a black detection controller 20 to determine if input pixel information 22 is to be classified as neutral or color. For color pixels, an output from a sophisticated and expensive, non-linear conversion table 24, which has multiple inputs and outputs, is used for conversion to CMYK. When pixels are determined to be neutral, an output of a single TRC look-up table 26 is used which converts the L-channel of an input pixel information 22 to the K (black) channel, with CMY set to zero. The selection of which output to use in image formation is accomplished by switching unit 28, which is controlled by controller 20. Thus, system 18 is a switching type system wherein upon a determination of pixel information 22 as being one of color or neutral, a selection of the output from non-linear conversion table 24 or TRC look-up table 26 is made. It is appreciated other types of switching configurations could also be employed.
With the advent of fuzzy neutral detection, input pixels are not required to be restrictively or crisply defined as only neutral or color, but can have fuzzy memberships (0 greater than 1) in a neutral class. For example, in one embodiment input pixel information can be classified as 0.2 neutral (moderate color), as 0.7 (used to represent a weak color) or some other intermediate value.
Examples of fuzzy detection/classification systems include those described in U.S. Pat. No. 5,765,029 to Schweid, et al., A METHOD AND SYSTEM FOR FUZZY IMAGE CLASSIFICATION; U.S. Pat. No. 5,778,156 to Schweid et al., A METHOD AND SYSTEM FOR IMPLEMENTING FUZZY IMAGE PROCESSING OF IMAGE DATA, both hereby incorporated by reference. Color conversion and under-color removal techniques are described in U.S. Pat. No. 5,515,172 to Shiau, APPARATUS AND METHOD FOR ENHANCED COLOR TO COLOR CONVERSION, U.S. Pat. No. 5,359,437 to Hiba, METHOD FOR UNDERCOLOR REMOVAL IN COLOR IMAGE FORMING APPARATUS; and U.S. Pat. No. 5,146,328 to Yamasaki et al., COLOR SIGNAL NETWORK SYSTEM, all hereby incorporated by reference.
One mechanism for using fuzzy neutral detected information during the rendering process, including the conversion of an input pixel into CMYK, is to use several non-linear full conversion tables. Particularly, individual tables may be designed allowing different percentages of under-color removal. For example, a table corresponding to a conversion when fuzzy membership in the neutral class is 0.5 could be generated which generates 50% under-color removal. The inputted fuzzy neutral pixel could then be quantitized to an equal number of levels as there are tables. For example, five tables can be designed corresponding to 0, 33, 50, 66, and 100% under-color removal, for fuzzy neutral membership quantitized to 0, 0.33, 0.50, 0.66 and 1.0. Thereafter, the table reflecting the detected fuzzy classification of the input pixel information is chosen for appropriate conversion.
However, the foregoing proposal is costly since it requires the use of several expensive non-linear transformations, usually in the form of interpolated look-up tables.
Therefore, in an environment where fuzzy color detection/classification of pixel data has occurred such that there has been a smooth transition with respect to pixel detection values, it is considered useful to provide an economic, easy to implement manner of rendering an image, including a variable under-color removal scheme.
In this environment, the present invention determines a manner of using information which will describe a color classification other than xe2x80x9ccolorxe2x80x9d or xe2x80x9cneutralxe2x80x9d to produce a full-color transition without a single switching point at the transition to neutral or full black.
A color conversion table is designed to receive a plurality of color input signals of a first color space model and convert the signals to output color signals in a second color space model. A tone reproduction curve table (TRC) is designed to receive at least one input signal which is the same as at least one input signal of the color conversion table. The color conversion table and the TRC are designed as a matched pair. A first weight w1, and a second weight w2, are held in a relationship to each other of w1+w2=x. A first multiplier in operative connection with the color conversion table incorporates the first weight value of the first weight, w1, wherein the outputs from the color conversion table are multiplied by the first weight value, generating weighted color conversion output signals. A second multiplier is in operative connection with the TRC, and incorporates a second weight value of the second weight, w2. The output of the TRC is multiplied by the second weight value, thereby generating a weighted TRC output signal. An adder is placed in operative connection with the first multiplier and the second multiplier, wherein the weighted color conversion output signals and the weighted TRC output signal are combined. A fuzzy white detector/classifier is used to supply the first weight to the first multiplier and to supply the second weight to the second multiplier. The combined weighted color conversion output signals and the weighted TRC output signals is represented by w*C0, w*M0, w*Y0, w*K0+(1xe2x88x92w)*K100, when the conversion of the input color is to a CMYK color space.